.TH "ccnd/ccnd_internal_client.c" 3 "14 Sep 2011" "Version 0.4.1" "Content-Centric Networking in C" \" -*- nroff -*-
.ad l
.nh
.SH NAME
ccnd/ccnd_internal_client.c \- Internal client of ccnd, handles requests for inspecting and controlling operation of the ccnd; requests and responses themselves use ccn protocols. 
.SH SYNOPSIS
.br
.PP
.SS "Defines"

.in +1c
.ti -1c
.RI "#define \fBGOT_HERE\fP"
.br
.ti -1c
.RI "#define \fBCCND_NOTICE_NAME\fP   'notice.txt'"
.br
.ti -1c
.RI "#define \fBCCND_TEST_100137\fP   0"
.br
.ti -1c
.RI "#define \fBCCND_PING\fP   1"
.br
.ti -1c
.RI "#define \fBMORECOMPS_MASK\fP   0x007F"
.br
.RI "\fILocal interpretation of selfp->intdata. \fP"
.ti -1c
.RI "#define \fBMUST_VERIFY\fP   0x0080"
.br
.ti -1c
.RI "#define \fBMUST_VERIFY1\fP   (MUST_VERIFY + 1)"
.br
.ti -1c
.RI "#define \fBOPER_MASK\fP   0xFF00"
.br
.ti -1c
.RI "#define \fBOP_PING\fP   0x0000"
.br
.ti -1c
.RI "#define \fBOP_NEWFACE\fP   0x0200"
.br
.ti -1c
.RI "#define \fBOP_DESTROYFACE\fP   0x0300"
.br
.ti -1c
.RI "#define \fBOP_PREFIXREG\fP   0x0400"
.br
.ti -1c
.RI "#define \fBOP_SELFREG\fP   0x0500"
.br
.ti -1c
.RI "#define \fBOP_UNREG\fP   0x0600"
.br
.ti -1c
.RI "#define \fBOP_NOTICE\fP   0x0700"
.br
.ti -1c
.RI "#define \fBOP_SERVICE\fP   0x0800"
.br
.ti -1c
.RI "#define \fBCCND_ID_TEMPL\fP   'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'"
.br
.ti -1c
.RI "#define \fBCCN_PATH_VAR_TMP\fP   '/var/tmp'"
.br
.ti -1c
.RI "#define \fBCCND_KEYSTORE_PASS\fP   '\\010\\043\\103\\375\\327\\237\\152\\351\\155'"
.br
.in -1c
.SS "Functions"

.in +1c
.ti -1c
.RI "static void \fBccnd_start_notice\fP (struct \fBccnd_handle\fP *ccnd)"
.br
.ti -1c
.RI "static struct \fBccn_charbuf\fP * \fBccnd_init_service_ccnb\fP (struct \fBccnd_handle\fP *ccnd, const char *baseuri, int freshness)"
.br
.ti -1c
.RI "static enum \fBccn_upcall_res\fP \fBccnd_answer_req\fP (struct \fBccn_closure\fP *selfp, enum \fBccn_upcall_kind\fP kind, struct \fBccn_upcall_info\fP *info)"
.br
.RI "\fICommon interest handler for ccnd_internal_client. \fP"
.ti -1c
.RI "static int \fBccnd_internal_client_refresh\fP (struct ccn_schedule *sched, void *clienth, struct \fBccn_scheduled_event\fP *ev, int flags)"
.br
.ti -1c
.RI "static void \fBccnd_uri_listen\fP (struct \fBccnd_handle\fP *ccnd, const char *uri, \fBccn_handler\fP p, intptr_t intdata)"
.br
.ti -1c
.RI "static void \fBccnd_reg_ccnx_ccndid\fP (struct \fBccnd_handle\fP *ccnd)"
.br
.RI "\fIMake a forwarding table entry for ccnx:/ccnx/CCNDID. \fP"
.ti -1c
.RI "int \fBccnd_init_internal_keystore\fP (struct \fBccnd_handle\fP *ccnd)"
.br
.ti -1c
.RI "static int \fBpost_face_notice\fP (struct \fBccnd_handle\fP *ccnd, unsigned faceid)"
.br
.ti -1c
.RI "static int \fBccnd_notice_push\fP (struct ccn_schedule *sched, void *clienth, struct \fBccn_scheduled_event\fP *ev, int flags)"
.br
.ti -1c
.RI "void \fBccnd_face_status_change\fP (struct \fBccnd_handle\fP *ccnd, unsigned faceid)"
.br
.RI "\fICalled by ccnd when a \fBface\fP undergoes a substantive status change that should be reported to interested parties. \fP"
.ti -1c
.RI "int \fBccnd_internal_client_start\fP (struct \fBccnd_handle\fP *ccnd)"
.br
.ti -1c
.RI "void \fBccnd_internal_client_stop\fP (struct \fBccnd_handle\fP *ccnd)"
.br
.in -1c
.SH "Detailed Description"
.PP 
Internal client of ccnd, handles requests for inspecting and controlling operation of the ccnd; requests and responses themselves use ccn protocols. 

Part of ccnd - the CCNx Daemon.
.PP
Copyright (C) 2009-2011 Palo Alto Research Center, Inc.
.PP
This work is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This work is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 
.PP
Definition in file \fBccnd_internal_client.c\fP.
.SH "Define Documentation"
.PP 
.SS "#define CCN_PATH_VAR_TMP   '/var/tmp'"
.PP
Definition at line 396 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_init_internal_keystore().
.SS "#define CCND_ID_TEMPL   'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'"
.PP
Definition at line 320 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start(), and ccnd_uri_listen().
.SS "#define CCND_KEYSTORE_PASS   '\\010\\043\\103\\375\\327\\237\\152\\351\\155'"
.PP
Definition at line 405 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_init_internal_keystore().
.SS "#define CCND_NOTICE_NAME   'notice.txt'"
.PP
Definition at line 47 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start(), and ccnd_start_notice().
.SS "#define CCND_PING   1"
.PP
Definition at line 55 of file ccnd_internal_client.c.
.SS "#define CCND_TEST_100137   0"
.PP
Definition at line 50 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req().
.SS "#define GOT_HERE"
.PP
Definition at line 45 of file ccnd_internal_client.c.
.SS "#define MORECOMPS_MASK   0x007F"
.PP
Local interpretation of selfp->intdata. 
.PP
Definition at line 111 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req().
.SS "#define MUST_VERIFY   0x0080"
.PP
Definition at line 112 of file ccnd_internal_client.c.
.SS "#define MUST_VERIFY1   (MUST_VERIFY + 1)"
.PP
Definition at line 113 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start().
.SS "#define OP_DESTROYFACE   0x0300"
.PP
Definition at line 117 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_NEWFACE   0x0200"
.PP
Definition at line 116 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_NOTICE   0x0700"
.PP
Definition at line 121 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_PING   0x0000"
.PP
Definition at line 115 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_PREFIXREG   0x0400"
.PP
Definition at line 118 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_SELFREG   0x0500"
.PP
Definition at line 119 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_SERVICE   0x0800"
.PP
Definition at line 122 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), and ccnd_internal_client_start().
.SS "#define OP_UNREG   0x0600"
.PP
Definition at line 120 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req(), ccnd_internal_client_start(), and process_prefix_face_list_item().
.SS "#define OPER_MASK   0xFF00"
.PP
Definition at line 114 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req().
.SH "Function Documentation"
.PP 
.SS "static enum \fBccn_upcall_res\fP ccnd_answer_req (struct \fBccn_closure\fP * selfp, enum \fBccn_upcall_kind\fP kind, struct \fBccn_upcall_info\fP * info)\fC [static]\fP"
.PP
Common interest handler for ccnd_internal_client. 
.PP
Definition at line 127 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start().
.SS "void ccnd_face_status_change (struct \fBccnd_handle\fP * ccnd, unsigned faceid)"
.PP
Called by ccnd when a \fBface\fP undergoes a substantive status change that should be reported to interested parties. 
.PP
In the destroy case, this is called from the hash table finalizer, so it shouldn't do much directly. Inspecting the \fBface\fP is OK, though. 
.PP
Definition at line 540 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_start_notice(), do_deferred_write(), finalize_face(), and register_new_face().
.SS "int ccnd_init_internal_keystore (struct \fBccnd_handle\fP * ccnd)"
.PP
Definition at line 409 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_create(), and ccnd_internal_client_start().
.SS "static struct \fBccn_charbuf\fP* ccnd_init_service_ccnb (struct \fBccnd_handle\fP * ccnd, const char * baseuri, int freshness)\fC [static, read]\fP"
.PP
Definition at line 61 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req().
.SS "static int ccnd_internal_client_refresh (struct ccn_schedule * sched, void * clienth, struct \fBccn_scheduled_event\fP * ev, int flags)\fC [static]\fP"
.PP
Definition at line 301 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start().
.SS "int ccnd_internal_client_start (struct \fBccnd_handle\fP * ccnd)"
.PP
Definition at line 586 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_create().
.SS "void ccnd_internal_client_stop (struct \fBccnd_handle\fP * ccnd)"
.PP
Definition at line 635 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_destroy().
.SS "static int ccnd_notice_push (struct ccn_schedule * sched, void * clienth, struct \fBccn_scheduled_event\fP * ev, int flags)\fC [static]\fP"
.PP
Definition at line 500 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_face_status_change().
.SS "static void ccnd_reg_ccnx_ccndid (struct \fBccnd_handle\fP * ccnd)\fC [static]\fP"
.PP
Make a forwarding table entry for ccnx:/ccnx/CCNDID. 
.PP
This one entry handles most of the namespace served by the ccnd internal client. 
.PP
Definition at line 374 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start().
.SS "static void ccnd_start_notice (struct \fBccnd_handle\fP * ccnd)\fC [static]\fP"
.PP
Definition at line 553 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_answer_req().
.SS "static void ccnd_uri_listen (struct \fBccnd_handle\fP * ccnd, const char * uri, \fBccn_handler\fP p, intptr_t intdata)\fC [static]\fP"
.PP
Definition at line 323 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_internal_client_start().
.SS "static int post_face_notice (struct \fBccnd_handle\fP * ccnd, unsigned faceid)\fC [static]\fP"
.PP
Definition at line 471 of file ccnd_internal_client.c.
.PP
Referenced by ccnd_notice_push().
.SH "Author"
.PP 
Generated automatically by Doxygen for Content-Centric Networking in C from the source code.
